Skip to content

feat: add Windows and Linux support - #43

Open
amurph491 wants to merge 3 commits into
mainfrom
alex/windows-support
Open

feat: add Windows and Linux support#43
amurph491 wants to merge 3 commits into
mainfrom
alex/windows-support

Conversation

@amurph491

Copy link
Copy Markdown
Collaborator

Summary

  • Add scripts/credential-helper.py — a cross-platform credential storage script (stdlib only) that replaces the macOS-only security command. Uses macOS Keychain, Windows Credential Manager (via ctypes), or Linux secret-tool depending on platform.
  • Update hooks/check-token.sh to use the credential helper and detect python3/python/py instead of hardcoding python3.
  • Update skills/configure/SKILL.md to replace all security commands with credential helper calls.
  • Fix non-portable stat//tmp/ paths in skills/assets/SKILL.md (cross-platform stat fallback, mktemp -d for temp directory).
  • Update documentation across 5 files to replace "macOS Keychain" with platform-aware "OS credential store" language.

Test plan

  • macOS regression: Run configure and verify credential storage/retrieval and token refresh hook
  • Windows: Test credential helper get/set/delete and full configure flow
  • Linux: Install libsecret-tools, test credential helper and configure flow
  • Edge case: credential-helper get with no stored credential exits 1 with empty stdout

Replace macOS Keychain (`security` command) dependency with a Python
credential helper that abstracts credential storage across macOS
(Keychain), Windows (Credential Manager via ctypes), and Linux
(secret-tool/libsecret). Update the token refresh hook to detect
python3/python/py and use the credential helper. Fix non-portable
stat/tmp paths in the assets skill.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@amurph491 amurph491 added this to the v1.9.0 milestone Aug 13, 2026
henry-jackson and others added 2 commits August 21, 2026 11:54
Fix python3 Microsoft Store stub detection by trying py/python before
python3 on Windows and validating each candidate with `import sys`.
Add jq-free fallback so the hook works without jq installed. Replace
`echo | base64` with `curl -u` in the manual configure flow to avoid
Git Bash encoding issues. Document Windows prerequisites (Git for
Windows, jq) and add troubleshooting entries.

Tested e2e on Windows 11 ARM in Parallels: credential helper round-trip,
hook with and without jq, and a live Spotify Ads API call via Claude Code.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
fix: Windows compatibility for hook and configure flow
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants